home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / utils / dta21 / whatsnew.dta < prev   
Text File  |  1994-04-23  |  44KB  |  876 lines

  1. What's new in DTA:
  2.  
  3.  Rel 2.1.0 (04/23/94)
  4.  
  5.   Changes:
  6.   o Fixed flic-reading code so it reads the bottom row of
  7.     pixels properly.
  8.   o Rewrote a lot of the internal picture-file handling code.
  9.     All pictures are now read into memory buffers, and all
  10.     operations are performed on the memory buffers in
  11.     sequence.  (Formerly, DTA read most pictures
  12.     in a line at a time, and did all the operations on
  13.     each line of pixels... it kept lots of picture files
  14.     open simultaneously )
  15.     The side effects of these changes are:
  16.      (1) Basic operations use more memory.
  17.      (2) Real complicated operations (averaging, compositing,
  18.          etc.) use less memory.
  19.      (3) Most everything works at least a little bit faster,
  20.          and some operations are a lot faster.
  21.      (4) There's no longer any limit on the number of pictures
  22.          that you can average.  (DTA used to fail if you
  23.          tried averaging more than 10 or 12 pictures.)
  24.      (5) I was able to reshuffle the order of operations.
  25.          Now, the order is: chroma-key, averaging, clipping,
  26.          scaling, post-scale clipping, rotation, compositing.
  27.          (Now that I've gotten this far, I've realized that
  28.          this still stinks... what's really needed is a
  29.          user-defined order.)
  30.      (6) Made it possible to add arbitrary rotations.
  31.      (7) Processing a frame takes more steps, so the "percent
  32.          finished" information isn't as useful as it used
  33.          to be.
  34.   o Had trouble reading some TGA files produced with
  35.     RMORF 0.4 because of incorrect header information.
  36.     DTA will now assume that a TGA file is 320x200 resolution
  37.     if the image size fields are left blank.
  38.   o Added built-in support for ZIP and LZH files, thanks to
  39.     TurboPower Software's incredible programming toolkits.
  40.     No more shelling to PKUNZIP or LHA required.  As a result,
  41.     extraction from archives is a lot faster, and there's no
  42.     need to put up with LHA's weird screen access anymore.
  43.     Unfortunately, because of this change I had to drop support
  44.     for the ARJ archiver.
  45.   o When building 8-bit flics, DTA used to always use the
  46.     320x200 resolution some another resolution was selected
  47.     using the /R switch.  The reason for that was that 320x200
  48.     is the only supported resolution for the original Autodesk
  49.     Animator .FLI format.
  50.       From now on, it'll use the actual resolution from the
  51.     first input picture file, like the now-obsolute /RA
  52.     switch used to do.
  53.       So unless your input pictures are already 320x200, you'll
  54.     get .FLC files instead of .FLI files.  You can make DTA
  55.     create a .FLI file even with other resolution input by
  56.     specifying /R1 or /R320,200.
  57.       You'll also need to use /R if you want to create
  58.     larger images for compositing...
  59.   o When DTA makes a 320x200 flic, it always creates a .FLI
  60.     file instead of a .FLC file.  Unless you use the /FLC
  61.     switch.
  62.   o Reworked grayscale options... now there's /G, /G128, /G64,
  63.     and /G32, /G16, /G8, and /G4.
  64.       /G represents a 256-level grayscale except when the output
  65.     format is a 320x200 .FLI file, when it represents a 64-level
  66.     grayscale.  That's because .FLI won't support higher than
  67.     64 shades.
  68.       /G128 represents a 128-level grayscale, /G64 a 64-level
  69.     grayscale, etc.
  70.     The lower numbers will get you a lower-quality image, which
  71.     will almost always compress better.
  72.       Most VGA and SVGA monitors can only display 64 shades
  73.     of gray, so it's wasteful to use more than that if your
  74.     picture will only be displayed on a monitor.
  75.     Some laptop VGA displays can only display 32 shades.
  76.       If you're going to be printing your image or using it
  77.     as a bump map or height field with a rendering program,
  78.     then the more shades the better.
  79.   o Renamed /CH (chroma-key) to /CK so that /CH would be free
  80.     for a new option.
  81.   o Got rid of /3D... I pulled it out to make some of the
  82.     rewrite easier.  You can now get a similar 3d effect
  83.     using /CHR and /CHB (see below).
  84.   o Added /BU, which makes DTA save .TGA files bottom-up
  85.     (or upside-down, if you prefer) instead of top-down.
  86.     ... some applications don't understand top-down .TGAs.
  87.   o Added /IG, which maked DTA save .GIF files in interlaced
  88.     format.  It can also read interlaced .GIFs now.
  89.   o When you create an 8-bit TGA file, DTA will now
  90.     produce a colormapped TGA, not a greyscale TGA.
  91.     If you want a greyscale TGA, use /G instead of /B8.
  92.     DTA can now read colormapped TGA files, too.
  93.   o Added /CH[R,G,B,A] which stand for CHannel insertion,
  94.     which should let you create some truly weird effects
  95.     if you're so inclined.
  96.     (This is a pretty hard concept to explain, so bear with me...
  97.     and remember that you don't have to use it, just like you
  98.     don't have to use /L...  DTA still understands simple
  99.     command lines like "dta *.tga".)
  100.       You can specify /CHR (red channel), /CHG (green channel),
  101.     /CHB (blue channel), and /CHA (alpha channel) to cause
  102.     a gray-scale version of an image file to be inserted
  103.     into a specific channel of the current layer.
  104.       You can use this to specify a matte for an image that
  105.     doesn't contain an alpha channel, like this:
  106.         dta background.tga /l pics*.tga /cha masks*.tga
  107.     or to get a red/blue 3d effect (the kind that requires
  108.     funny glasses):
  109.         dta /chr left*.tga /ga0.8 /chb right*.tga
  110.     (the /ga is to adjust the brightness of the red component
  111.      so it doesn't drown out the blues.  Some experimentation
  112.      may be necessary to get the balance just right... if
  113.      somebody comes up with an ideal brightness combination,
  114.      let me know and I'll put it in the doc.)
  115.       /CH works much like /L, except /CH is subordinate to /L.
  116.       /CH merging (insertion) takes place after picture
  117.     averaging, gamma correction, and chroma-keying, but before
  118.     clipping, rotation, scaling, etc.  /L merging (compositing)
  119.     takes place after all of the above.  So, you can have separate
  120.     chroma-key, gamma, averaging settings for each /CH layer,
  121.     but only one /ROT, /LOC, etc. setting in each /L layer
  122.     regardless of how many /CH layers you've got.  And some
  123.     other switches, like /F, /O, /R, etc. can only be specified
  124.     once per command line, no matter how many /L and /CH layers
  125.     you've got.
  126.       Note that if you specify "pics*.tga /cha masks*.tga",
  127.     you're really specifying two /CH levels, not just one.
  128.     The first, without a /CH parameter, contains pics*.tga,
  129.     and there's no special processing of the color channels.
  130.     The second gets converted to a grayscale and is inserted
  131.     into the alpha channel.
  132.       (Thanks to John Jordan for suggesting alpha insertion in
  133.     the first place...)
  134.   o When converting from one file format to another, DTA
  135.     will usually use the original picture's filename, but
  136.     with a new extension (unless you specify a different
  137.     filename with /O).
  138.       But, if you're creating an output picture from multiple
  139.     input layers, or multiple input channels, or averaged
  140.     images, or if input file and output file are in the same
  141.     format, then DTA will invent new output filenames, like
  142.     "OUT00000".
  143.       You can now force DTA to use the original filename
  144.     even in those situations if you use the new /FO (force
  145.     original filename) switch.
  146.       DTA might still not pick the right filename when you're
  147.     using multiple layers, because it'll always use the first
  148.     filename in the first channel group in the first layer.
  149.     If, for example, you're overlaying a signature or log over a
  150.     bunch of input pictures, like this:
  151.       DTA PICS*.TGA /L SIGN.TGA /FG /FO
  152.     it'll be okay because each .GIF file will use the filename
  153.     from the first layer (PICS*.TGA).
  154.     But if you're overlaying a bunch of pictures onto a single
  155.     background, like this:
  156.       DTA BACK.TGA /L PICS*.TGA /FG /FO
  157.     it won't be okay, because each output picture will get saved
  158.     as BACK.GIF.  In that circumstance tell DTA to use the
  159.     filenames from the second layer, like this:
  160.       DTA BACK.TGA /L PICS*.TGA /FG /FO2
  161.     You can also specify a specific channel group, like this:
  162.       DTA /CHR X*.TGA /CHG Y*.TGA /CHB Z*.TGA /FG /FO1,2
  163.     (the 1 means the first layer... you have to specify a
  164.     layer when you're specifying a channel, even if there's
  165.     only one.  The 2 means the second channel group in the
  166.     command, green in this case.)
  167.      You can use /FO to force DTA to replace your original
  168.     files after processing, like this:
  169.       DTA *.GIF /ROT90 /FG /FO
  170.   o Added read/write support for MindImage .RLE files.
  171.     (These are the .RLE files used for the random dot
  172.     stereogram program MindImage... DTA can NOT read any of
  173.     the many other file formats that also use the extention
  174.     .RLE)
  175.       You read one of these files just like you would any other,
  176.     by using the filename in the command line.  For example,
  177.     to convert a RLE to a GIF file, type:
  178.      DTA HUMAN.RLE /FG
  179.       To write a RLE, use the new /FR switch.  Be warned that
  180.     MindImage expects pictures' dimensions to be powers of two
  181.     with a maximum of 512.  So, DTA will always force pictures
  182.     to have horizontal and vertical dimensions of 64, 128,
  183.     256, or 512.  If a dimension is larger than 512, then
  184.     it'll be chopped down to 512.  Otherwise, unless a dimension
  185.     is exactly equal to one of the allowed dimensions, it'll
  186.     be increased to match.  If the dimensions that are selected
  187.     for you are different from the original dimensions, DTA
  188.     will crop or extend the picture.  For example, if you start
  189.     with a 640x480 picture, DTA will chop off a little from the
  190.     left and right to pare the 640 down to 512, and add enough
  191.     black border to the top and bottom to extend the 480 to 512.
  192.     Make DTA rescale the image to the new dimensions with the /SC
  193.     switch.  In the 640x480 example,
  194.      DTA 640.GIF /FR /SC
  195.     will cause the 640x480 image to be rescaled to exactly
  196.     512x512.
  197.      DTA 640.GIF /FR /R128,128
  198.     will result in a 128x128 image chopped from the middle of
  199.     the starting image.  The next two commands:
  200.      DTA 640.GIF /FR /SC128,128
  201.      DTA 640.GIF /FR /R128,128 /SC
  202.     both result in a 128x128 image with the whole rescaled to
  203.     fit exactly.
  204.   o Added read-only support for IFF/ILBM files, 24-bit variety
  205.     only.  Files with extensions of .IFF and .LBM will be
  206.     recognized.
  207.   o Changed the default 16-bit flic format from .FLX to .FLH.
  208.     .FLX is still supported to make life easier for users of
  209.     Mathematica's Tempra Turbo Animator (the program that first
  210.     supported that format).  Just use the /FLX switch to tell
  211.     DTA to use .FLX instead of .FLH.
  212.       The basic (only?) difference between .FLX and .FLH is that
  213.     they compress the first frame differently.  .FLX uses a
  214.     byte-oriented scheme which does not compress 16-bit pictures
  215.     very well.  .FLH uses a word-oriented scheme which works much
  216.     better.
  217.       (My DFV flic player can read either.  Tempra Turbo Animator
  218.     will not be able to read the .FLH files.)
  219.   o Added support for .FLT (24-bit) flics.  Just use the /B24
  220.     switch to tell it to build a .FLT in stead of .FLC.
  221.       At the moment, my DFV player is the only player that can
  222.     can view this variation of the flic format... if anybody out
  223.     there wants some info on the modifications I made to the flic
  224.     format to support 24-bit, let me know.  They're not too
  225.     complicated, and they're not a secret.
  226.   o Because 24-bit flics can get so *huge*, I added some tricks
  227.     for minimizing the size.  First, the /TO (flic tolerance)
  228.     switch, which causes DTA to ignore pixel differences between
  229.     frames when the distance in color-space is less than or
  230.     equal to a value that you supply.
  231.       I know that explanation leaves something to be desired
  232.     ... to understand what's going on, try it out by adding
  233.     "/TO15" at the end of a command line.  The result will
  234.     usually be a smaller flic that plays more quickly and
  235.     doesn't look quite as good.
  236.       This trick works better with digitized video than it does
  237.     with rendered animation.
  238.       Sometimes this gimmick produces a side effect of faint
  239.     trails on the screen when you animate anti-aliased images.
  240.     Try the /TX switch (which isn't really an acronym of anything)
  241.     with a number, for example "/TX5".  In that case, one frame
  242.     in every 5 will be a full difference frame with no
  243.     tolerance, and the trails will disappear.
  244.       /TO and /TX work only with 24-bit flics.  I'll probably
  245.     add it later for 8-bit and 16-bit flics.
  246.   o Added /INV which inverts either whole colors or individual
  247.     color channels.  You can do /INVR, /INVG, /INVB, /INVA,
  248.     or combinations of them.  Specifying just "/INV" is the same
  249.     as specifying "/INVR /INVG /INVB".
  250.     If you use any /INV option with /NM (no remapping of
  251.     mapped files) then color indexes will be inverted
  252.     instead of color components.
  253.   o Added /RED, /GREEN, /BLUE, and /ALPHA switches which
  254.     let you extract a particular channel from an image.
  255.     So, you can:
  256.       DTA PICTURE /RED
  257.     to create a grayscale image from just the red component, or:
  258.       DTA X*.TGA /CHR X*.TGA /BLUE /CHB Y*.TGA /RED
  259.     to first load in each picture as a regular 32-bit image,
  260.     then replace the red channel with the original blue channel
  261.     and then replace the blue channel with the red channel from
  262.     a completely different set of pictures.
  263.     This is fairly useless most of the time, but it should
  264.     make some really wild effect possible.
  265.   o Added /SCF (fast scaling).  Use it like /SC.  It works
  266.     a *lot* faster than /SC, but looks really bad, because
  267.     it doesn't use any interpolation.
  268.   o Added /CLP (post-scale clipping) which works just like /CL
  269.     but it clips the picture after scaling takes place.
  270.     If you type:
  271.      dta x.tga /sc500,500 /cl120,120,100,100 /pcl140,140,150,150
  272.     DTA will read in the picture and clip out a 100x100 window
  273.     from the picture (at coordinates 120,120), then rescale
  274.     the clipped window to 500x500, and then clip out a 150x150
  275.     window from the scaled picture (at coordinates 140,140).
  276.   o Fixed a bug: DTA would ignore /332 and /G palette options
  277.     if you were outputting to a GIF file.
  278.   o Got rid of /ST (start) parameter, replaced it with
  279.     /LOC.  Syntax is now /LOC#,#,# (default=0,0,0).
  280.     The first two numbers are the x,y coords on the screen
  281.     (from the center) where the center of the image should
  282.     go.... Unless you specify /LL (which tells DTA to base the
  283.     location on the left edge of the screen and image), /LR
  284.     (right edge), /LT (top edge), or /LB (bottom edge).
  285.     The third number is a time variable, specified as a
  286.     percentage.
  287.       If you specify /LOC0,0,0 that means put the image at
  288.     0,0 at the beginning of the animation.  Add /LOC25,25,50
  289.     and the image will be put at coords 25,25 at exactly halfway
  290.     through the animation. If you don't specify a #,#,100,
  291.     then DTA will assume you want the final location to loop
  292.     back to the starting point.  You can enter as many or
  293.     few /LOC parameters per layer as you want...
  294.     DTA will use an interpolating spline to figure out the
  295.     actual locations per frame.
  296.       Unlike the old /ST, pictures can be placed at non-integer
  297.     locations.  If you do, your picture will be resampled.
  298.   o Added arbitrary rotation.  So you can specify /rot45
  299.     (or /rot110.25 for that matter).
  300.     You can add time values after multiple /ROT switches
  301.     just like you can after /LOC.
  302.       To get a full rotation, you could do "/ROT0,0 /ROT360,100".
  303.     If rot[100%]-rot[0] is a multiple of 360, then the final
  304.     rotation value will not be used ... this helps produce
  305.     a smooth loop.
  306.       Rotation uses smooth resampling.
  307.   o Input pictures that are larger than the output picture
  308.     are now centered... instead of only the top corner
  309.     showing, the center will show.
  310.   o Added read-only support for Type-1 TGA files (8-bit,
  311.     colormapped).
  312.   o Added /CC (chroma-key color), which allows you to specify
  313.     what color DTA should replace matching pixels with.  The
  314.     default is still 0,0,0,0 (black, fully transparent).
  315.   o Averaging and scaling now handle 32-bit pixels correctly
  316.     ... previously they didn't take the alpha byte into
  317.     account properly.  As a result, colors (in areas where
  318.     alpha-blending was taking place) would sometimes come
  319.     out too dark or too light.
  320.     As a result, these two functions are slower than they
  321.     used to be... but I think the other speedups will cancel
  322.     it out.
  323.   o Made DTA write 8- and 24-bit PCX files (it did a couple years
  324.     ago, but only 8-bit and then I pulled it out to save
  325.     room.  Now that DTA's protected mode, there's no reason
  326.     not to support this output format).
  327.   o Made DTA read and write Vistapro .VAN animation files.
  328.   o DTA can now write as well as read BMP files, with
  329.     /FB switch.  /FD switch creates the same type of file,
  330.     but uses the .DIB extension instead of .BMP
  331.     By default, it creates 24-bit BMPs, but you can
  332.     make it create 8-bit BMPs by adding the /B8 switch.
  333.   o Fixed a bug in flic-reading... if a flic contained
  334.     a partial palette (fairly rare), DTA would get confused
  335.     and crash.
  336.  Rel 2.0.8 (10/22/93)
  337.   o Added 90 degree increment rotation... use "/ROT90", "/ROT180",
  338.     "/ROT-90", "/ROT270" etc.
  339.     Note: this is the order that operations get done...
  340.     First rotation, next scaling, next clipping.
  341.     So if you did "/cl100,100 /sc200,200 /rot90"
  342.     then DTA will first rotate the picture 90 degrees to the
  343.     right, then scale it to 200x200, and then clip off the
  344.     top half and left half of the scaled, rotated image.
  345.   o Expanded /R switch... in addition to preset resolution
  346.     numbers like "/R6", you could also set the resolution
  347.     explicitly like "/R640,480".  Just be careful that, if you're
  348.     creating a .FLC file *don't* pick an odd number for the
  349.     horizontal dimension: "/R149,200" is a no-no.
  350.     (That's not a limitation of the .FLC format, just of
  351.     my implementation.)
  352.   o Reworked the way scripts work (you know, like "@pics.scr").
  353.     Scripts can now include regular command-line switches
  354.     in addition to filenames.  Just make sure that you've got
  355.     a new file name or switch on each line of the script file.
  356.     You can even include the name of a new script file...
  357.     Just try to avoid recursive script files...
  358.     *Don't* put "@script1.scr" inside of SCRIPT1.SCR, and
  359.     *don't* put "@script1.scr" inside of SCRIPT2.SCR if SCRIPT2.SCR
  360.     is called by SCRIPT1.SCR.
  361.     Or DTA will go into an infinite loop and hang up.
  362.   o If you don't include an extension with an @filename, DTA
  363.     will add '.SCR' to the filename.
  364.   o Fixed some clipping bugs.
  365.   o DTA would sometimes crash with an out-of-heap-memory
  366.     runtime error when flipping a large upside-down TGA file.
  367.     Fixed.
  368.  Rel 2.0.7 (09/30/93)
  369.   o Scaling didn't work right when DTA was reading from a
  370.     flic (probably also when reading an upside-down
  371.     TGA and creating a GIF or TGA).
  372.     Fixed.
  373.  Rel 2.0.6 (09/27/93)
  374.   o Fixed some more bugs in compositing and chroma-key.
  375.  Rel 2.0.5 (09/12/93)
  376.   o Finally got rid of the protection fault that invariably
  377.     occurred after DTA finished building a .FLX file.
  378.  Rel 2.0.4 (09/01/93)
  379.   o Discovered a strange 'feature' in TGA files produced by
  380.     a program called Imagine.  Even though they are unmapped
  381.     24-bit images, for some reason they contain a color map.
  382.     Because DTA doesn't support colormapped TGA files, I
  383.     never paid any attention to color-map info... so DTA
  384.     just would ungraciously treat the color-map in such files
  385.     as if it were part of the image.
  386.     DTA still doesn't read colormapped TGA files, but now if
  387.     there's a color-map in an unmapped picture, it'll at
  388.     least bypass it correctly.
  389.  Rel 2.0.3 (08/25/93)
  390.   o Added inverse chroma-key (/CI).  Works the same as chroma-key
  391.     but backwards... only matching colors *won't* be made
  392.     transparent.
  393.   o Couldn't read .FLC files created with Autodesk Animator...
  394.     it got confused when it ran into the optional "prefix" and
  395.     "postage stamp" chunks.  Fixed.
  396.   o Had problems reading 16-bit TGA files... sometimes
  397.     resulting in page faults, sometimes in bad output.
  398.     Fixed.
  399.   o (There still seems to be a problem with .FLC files
  400.      created with DTA... some players choke on some flics.
  401.      And there's still that irritating page fault after it
  402.      finishes building a .FLX file... I'm working on 'em.)
  403.  Rel 2.0.2 (08/11/93)
  404.   o Multiple layers didn't work right with /NM (no remapping)...
  405.     only the bottom layer would show up in the final picture.
  406.     Now it works, including chroma-key.
  407.     Note: remember, all pictures in all layers must be colormapped,
  408.     and must share the same palette for /NM to work right.
  409.  Rel 2.0.1 (08/04/93)
  410.   o Fixed a bug in /CL (clipping).
  411.   o Fixed a bug in /CH (chroma-key).
  412.  Rel 2.0 (07/29/93)
  413.   o DTA can now read FLIC files.
  414.   o DTA can now read DIB/BMP files.
  415.   o DTA can now read Presidio .ANI files.
  416.   o DTA can read and write hicolor Tempra ".FLX" files.
  417.     Just specify /B16 (for 16-bit) on the command line to
  418.     build an FLX instead of an FLI or FLC.
  419.     (This feature seems to work well enough, but there are
  420.     still some bugs.
  421.     For some reason I haven't figured out yet, DTA crashes
  422.     with a General Protection fault whenever it builds a FLX file.
  423.     This only happens after it's finished building the animation.)
  424.   o Now including the FLISPEED program with the DTA package.
  425.     This'll change the speed value in the header of a flic
  426.     without requiring you to rebuild the animation.
  427.     Just type:
  428.       flispeed xxx.fli /s5
  429.     to change xxx.fli to a speed value of 5.
  430.   o Added multi-layer (use /L to separate layers) compositing.
  431.     Like this: DTA BACKGRND.TGA /L FORE*.TGA
  432.     If FORE*.TGA are 32-bit TGAs with alpha, then
  433.     DTA will make use of the transparency info.
  434.   o Added chroma-key (use /CHr,g,b to specify a transparent
  435.     color) ... this works okay, but not nearly as good as
  436.     starting with 32-bit TGA files containing transparency
  437.     info (which you can create in Polyray and, I'm told,
  438.     3D Studio).
  439.     You can use this feature to create 32-bit TGA files that
  440.     contain alpha information like this: DTA *.TGA /OT /B32 /CH255,0,0
  441.     (DMorf fans: DMorf will morph the alpha info along with the
  442.     color info... but DMorf can add alpha better than DTA can.)
  443.     Or, DTA BACKGRND.GIF /L FORE*.GIF /CH0,0,0 to composite a
  444.     over a background... DTA will make all black pixels transparent.
  445.       /CT specifies a tolerance for chroma-key.  If you (for example
  446.     specify "/CH0,255,0 /CT5" then all pictures in the range
  447.     <0,250,0> and <5,255,5> will become transparent.
  448.   o Added /REP# which repeats a single frame a specified number
  449.     of times.  Useful for inserting pauses in your flics.
  450.     For example, if you type
  451.       DTA before.tga /rep10 morf*.tga after.tga /rep10
  452.     before.tga and after.tga each get repeated ten times.
  453.     Note that this'll only create a pause if you have a speed
  454.     value greater than 0.
  455.   o Added /STx,y (start) ... instead of centering a picture
  456.     on the screen, you can tell DTA where to place the top-left
  457.     hand corner of an image on the screen.  You can have a separate
  458.     start value for each layer.
  459.   o Added /CLx1,y1,x2,y2 (clip)
  460.     X1 and Y1 specify the top-left corner of the clipping window,
  461.     and X2 and Y2 specify the size of the clipping window.
  462.     Clipping takes place AFTER scaling, if you use both.
  463.     You can have a separate clip for each layer.
  464.   o Got rid of /SX (scale X) and /SY (scale Y)... just use /SCx,y
  465.     for scaling.
  466.     You can have a separate scale value for each layer.
  467.   o No more real-mode executable.  DTA is just getting too darn
  468.     big.  Maybe I'll build a pared-down DTALITE or something
  469.     later on, if there's any demand.
  470.   o Fiddled with the status display some.
  471.   o Skipped 1.9... I think the amount of change justifies going
  472.     all the way to a new major release number.  Alexander
  473.     Enzmann requested flic-reading way back even before I
  474.     released 1.0 and here it is, finally.
  475.   o Probably some other stuff I've forgotten about.
  476.   o Fixed a bunch of bugs (and probably added some new ones
  477.     while putting in new features).
  478.  Rel 1.8g (01/18/93)
  479.   o Added comments to @files... just prefix comments with a ";".
  480.   o DTA now ignores blank lines in @files.
  481.   o Fixed assorted bugs.
  482.   o Added grayscale TIF output (/FI)
  483.   o Added /I option, which works like /K (skip), except instead
  484.     of specifying how many frames to skip, specify the total
  485.     number of frames you want in your flic.  So if you have
  486.     50 files... X000.TGA, X001.TGA, on up to X049.TGA, and
  487.     you type:
  488.      dta x*.tga /i10
  489.     then DTA will create a 10-frame flic from X000, X004, X009,
  490.      etc.
  491.  Rel 1.8f (12/30/92)
  492.   o Fixed some more bugs.
  493.   o Added support for 8-bit grayscale TGA files (type 3).
  494.     (To create one, use /B8 /FT).
  495.   o Added picture rescaling.  The /SC option, which only works
  496.     when you're creating flics, rescales an image so it's the same
  497.     size as the screen resolution.
  498.     The /SW option rescales an image so it's the same width as the
  499.     screen resolution (or, if you enter a number, like /SW100,
  500.     to the width that you specify... if you use /SW for an output
  501.     format other than a flic, then a specified width is required)
  502.     The /SD option rescales an image so it's the same depth as the
  503.     screen resolution (or, if you enter a number, like /SD100,
  504.     to the depth that you specify... if you use /SD with an output
  505.     format other than a flic, then a specified width is required)
  506.  Rel 1.8e (12/17/92)
  507.   o For some reason the /NM option didn't work anymore.  Fixed.
  508.   o Fixed a bug in FLC compression... it caused the wrong pixels
  509.     to be updated when there was a change in a pixel row after a
  510.     run of more than 254 unchanged pixels.
  511.   o Fixed a bug that caused a page-fault (runtime error 216)
  512.     when creating GIF or TGA files in the protected mode
  513.     version.
  514.   o There used to be a limit on the width of pictures that DTA
  515.     could process... if you made it read a picture wider than
  516.     1280 pixels, you'd either get a spectacular crash requiring
  517.     a reboot (real mode) or an error message (protected mode).
  518.     Now it should be able to process pictures with a width up
  519.     to 16K pixels or so without crashing.
  520.  Rel 1.8d (11/30/92)
  521.   o Fixed one bug, which prevented DTA from creating 1-frame
  522.     flics correctly.
  523.   o Including two versions of DTA... DTA.EXE (real mode) and
  524.     DTAX.EXE (protected mode).  The memory management stuff
  525.     that I included in 1.8b and 1.8c is now separated into
  526.     another archive, DTAMEM.ZIP.
  527.     The real-mode version runs faster than the protected-mode
  528.     version, but only gives you access to 640K of memory.
  529.  Rel 1.8c (11/27/92)
  530.   o Whoops, introduced some new bugs in 1.8b.  Got ZIP, LZH, and
  531.     ARJ working fine, but it wouldn't read pictures outside of
  532.     archives anymore.
  533.  Rel 1.8b (11/27/92)
  534.   o Fixed a bug that caused a runtime error 204 whenever a frame
  535.     couldn't be compressed and had to be stored raw.
  536.   o Flics of resolutions other than 320x200 are now saved with the
  537.     extension 'FLC' instead of 'FLI'... to be consistent with
  538.     conventions established by Autodesk's Animator Pro.
  539.   o This is the first version of DTA to be compiled in 286 protected
  540.     mode.  This means that DTA can access up to 16MB of extended
  541.     memory without all that messy EMS/XMS/virtual memory management.
  542.     It also means DTA doesn't recognize EMS or page to disk any more.
  543.     If you require EMS or virtual memory, stick with the original
  544.     version 1.8.
  545.     Two extra files (DPMI16BI.OVL and RTM.EXE) are distributed
  546.     along with DTA to support protected mode.  You must keep these
  547.     files either in the same directory as DTA, or in the DOS path.
  548.     When DTA is run from inside a Microsoft Windows enhanced-mode
  549.     DOS window, it'll use Windows' DPMI services instead of the
  550.     Borland DPMI server.
  551.   o MAYBE fixed a bug in FLC compression.
  552.   o DTA can read pictures stored in ZIP and ARJ archives as well
  553.     as the previously supported LZH archives ... IF you've got the
  554.     appropriate de-archiver (PKUNZIP.EXE, ARJ.EXE, LHA.EXE) in your
  555.     DOS path.
  556.  
  557.  Rel 1.8 (11/08/92)
  558.   o DTA couldn't locate PCX, IMG, or GIF files in LZH archives... fixed.
  559.   o DTA can now read 24-bit PCX files (as well as the previously
  560.     supported 8-bit type).
  561.   o Added some additional error-checking so DTA will stop with an error
  562.     message if it runs out of disk space while creating output files.
  563.     Previously it just kept on trying to write to a full disk.
  564.   o In a previous version, made some changes in the GIF-writing
  565.     code to speed it up and use less memory.  As a result, upside-
  566.     down TGAs weren't getting flipped rightside-up like they're
  567.     supposed to... fixed.
  568.   o Removed some useless experimental options: /L, /E, /O
  569.     If anybody ever actually found a use for any of these, let me know
  570.     and I'll put 'em back.
  571.   o Removed /W, since it was only added as a workaround to a bug that's
  572.     now finally fixed.
  573.   o Added GIF89a input. (extension blocks are IGNORED)
  574.   o Fiddled with output-file parameters.  You now specify the output
  575.     filename with /O, and the format with /F instead of specifying
  576.     both with /F
  577.   o Added /H, which lets you adjust brightness.  /HA50 increases the
  578.     values of red, green, and blue by 50%.  /HR200 /HG-25 increases the
  579.     value of red by 200%, and decreases green by 25%.
  580.   o Added /C, which lets you skip frames when scanning for a palette.
  581.     If you use /C5, then DTA will only scan 1 picture for every 5
  582.     in your animation.
  583.   o Added /K, which lets you skip input files when generating a
  584.     flic.  If you use /K3, DTA will ignore 2 frames out of every 3.
  585.     If you use both /K2 and /C2, then DTA will skip every other
  586.     picture, and create a palette out using only 1 of every 4
  587.     pictures.
  588.   o Fiddled with the time blurb so it writes in minutes and seconds
  589.     instead of milliseconds.
  590.  
  591.  Rel 1.7g (08/27/92)
  592.   o Fixed a rarely-encountered bug in 320x200 FLI compression.
  593.   o Reworked the documentation (actually, Dan Farmer did most all of
  594.     this task).
  595.  
  596.  Rel 1.7f (07/19/92)
  597.   o Fixed some weird bugs in selecting output filenames for GIF files.
  598.   o Added /PO option, which causes DTA to create a single optimal
  599.     palette even when it's creating GIF files.
  600.  
  601.  Rel 1.7e (07/02/92)
  602.   o Removed all the logging code, since the memory allocation
  603.     problems seem to be licked.
  604.   o First attempt at creating hi-color and true-color FLIs.
  605.     (To create a hi-color FLI, use the /b16 parameter.  The
  606.      resulting file with have an extension of FLH.  To create
  607.      a true-color FLI, use /b24.  The resulting file will have
  608.      an extension of FLT.)
  609.     So far there's no player that will display these new files,
  610.     but Steve Enns is working on one.
  611.   o The color-mapping speedups in the previous version resulted
  612.     in bad color choices in some cases.  Added an extra
  613.     step between palette selection and color-mapping that
  614.     should improve it.
  615.   o Added /RA parameter (auto-resolution)... tells DTA to use
  616.     the size of the first picture to decide how big to make
  617.     an FLI.  Note: use this parameter only with pictures with
  618.     even horizontal dimensions.
  619.   o When DTA used XMS to store pictures, it wasn't always clearing
  620.     the picture buffer when it was supposed to... resulting in
  621.     some background garbage when animating pictures smaller than
  622.     the FLI.
  623.   o Added /DR (random dither) parameter.  Adds/or subtracts a
  624.     random value from each pixel.  Random values are the same
  625.     across frames, so FLIs shouldn't explode in size like they
  626.     sometimes do with error-diffusion dithers like Floyd-Steinberg
  627.     and Sierra Lite.
  628.     Specify the range of the random number by appending a number
  629.     to the /DR parameter, like this:
  630.      dta *.tga /dr4
  631.     That will result in random numbers ranging from -4 to 4.
  632.     Note: I stole the idea from Stephen Coy's IMG2GIF program.
  633.   o Got rid of /M parameter, which affected the order of
  634.     color-tree pruning.  It was a failed experiments in
  635.     improving color-selection.
  636.   o Changed /MI (max internal colors) parameter to /M
  637.   o Changed RLE TGA output so that line boundaries aren't
  638.     crossed within a packet... (to avoid a VPIC bug)
  639.  
  640.  Rel 1.7d (04/25/92)
  641.   o Fixed some more memory allocation problems.
  642.   o Speeded up color-mapping.  When dithering, there should
  643.     be a big speed increase.  When not dithering there should
  644.     be a lesser increase.
  645.   o Added Sierra Lite dithering (/DS parameter).  SL dither
  646.     another error-diffusion-type dither, somewhat quicker
  647.     than Floyd-Steinberg.
  648.  
  649.  Rel 1.7c (04/15/92)
  650.   o Fixed a bug in grayscale output.
  651.   o Reduced the amount of memory required for the color tree.
  652.   o Fixed some other memory-related problems.
  653.   o Got rid of V (verbose), and added /LOG (which causes
  654.     assorted memory allocation info and other boring
  655.     debugging-type data to be written to a file called "DTA.LOG".
  656.   o Added /MI parameter (which means "maximum internal colors").
  657.     The octree color routine allows only 256 colors to exist
  658.     in the tree at any time.  Whenever the number of colors
  659.     exceeds 256, parts of the tree get truncated.
  660.     With /MI, you can change that maximum number of colors
  661.     to something other than 256.
  662.     If you change it to a number larger than 256, then the palette
  663.     will not be reduced to 256 colors until DTA is done scanning
  664.     pictures.
  665.     This can result in a nicer palette, but it uses more
  666.     memory.  I've had some nice results using "/mi2048".
  667.  
  668.  Rel 1.7b (04/01/92)
  669.   o Rel. 1.7 was missing a last-minute .FLI bug fix and
  670.     a document update or two.
  671.  
  672.  Rel 1.7 (03/31/92)
  673.   o Reads 256-color PCX files.
  674.   o Reads and writes 16, 24, and 32-bit TGA files, compressed
  675.     or uncompressed.
  676.     The default is compressed TGA-24.  /B16 selects 16-bit,
  677.     /B32 selects 32-bit.  /NC selects no rle compression.
  678.     Dithering works for TGA-16 files... But if you use ordered
  679.     dithering, DTA ignores any 'strength' value and uses a
  680.     default (because TGA-16 color reduction is regular).
  681.   o When scanning for a palette, it's a lot faster than before
  682.     when reading 256-color pictures.
  683.   o Fixed EMS bugs.  Added support for XMS.
  684.   o Added /332 (3/3/2 palette) option
  685.     (If you use ordered dithering, DTA ignores any supplies
  686.     'strength' value and uses a default).
  687.   o Added /NM (no-remapping) option.  When reading 8-bit
  688.     colormapped files, this tells DTA to use the original
  689.     palette that's included in the file instead of creating
  690.     a new palette from the colors in the picture, and to skip
  691.     re-mapping the picture to the palette.
  692.     If you're creating an .FLI from a bunch of .GIFs or .PCXs,
  693.     then DTA will use the palette from the first input file,
  694.     and it will assume that all of the pictures use the same
  695.     palette.  This will result in slightly better-looking output,
  696.     and DTA will generate the .FLI *MUCH* faster.
  697.     If these files do not use the same palette, then do not
  698.     use this option.
  699.     /NM does not work with any sort of dithering, frame-averaging,
  700.     or anything else that requires fiddling with colors.
  701.     If you're converting .PCX to .GIF, then the single palette
  702.     restriction does not apply...
  703.  
  704.  Rel 1.6 (01/25/92)
  705.   o Can write uncompressed Targa-16 files (use the /B16 switch).
  706.   o Can read compressed and uncompressed Targa-16 files (like
  707.     those you can produce with POLYRAY).
  708.   o Added /M option, which causes the palette tree-reduction
  709.     routine to prune the most popular branches instead of
  710.     least popular.  The resulting palette should be biased
  711.     a bit more toward detail in a picture instead of smoothly
  712.     shaded areas.
  713.   o Added /L option, which allows you to set the initial
  714.     (pre-reduction, that is) color resolution for one or
  715.     more of the color components (r,g,b) to something other
  716.     than the default 6 bits.  It doesn't make sense to set
  717.     it higher than 6 bits, since that's the most VGA can display.
  718.     But you could, for example, tell DTA to use fewer bits for
  719.     green and blue so that the reds get more representation,
  720.     like so:
  721.      dta *.tga /lb2 /lg3
  722.     (that sets the blue resolution to 2 bits and the green
  723.     resolution to 3 bits).
  724.   o When averaging pictures, DTA used to use an equal percentage
  725.     of each of the original pictures.  That's still the default,
  726.     but with the /E option, you can change this.  /E lets you
  727.     specify two numbers: (a) the amount of weight to give the
  728.     first picture, and (b) how much to increment that weight
  729.     for each successive picture.  So, assuming you start with
  730.     three TGA files, if you use this command:
  731.      dta *.tga /a5 /e2;1 /fg
  732.     the first frame will get a weight of 2, the second will get
  733.     3, and the third will get 4.  Which means the resulting
  734.     GIF file will be made up 22% from the first picture, 33%
  735.     from the second, 44% from the third.
  736.     This can be used with /t (trail) as well as /a (average).
  737.     The increment number can be negative... if you want
  738.     the first picture to stand out more than the others.
  739.     The default for the initial weight is 1.  The default
  740.     for the increment is 0.  If you use /e without specifying
  741.     an increment, then the increment is set to 1.
  742.     If you don't specify either number, then both numbers are
  743.     set to 1.
  744.   o Fixed a bug in averaging GIF files.
  745.   o When creating a new TGA file, DTA forgot to use the resolution
  746.     of the input file like it does with GIF files.  Fixed.
  747.   o Can now ignore comments in TGA files properly.
  748.   o When creating GIF files, DTA now saves at the same
  749.     time it performs the mapping step, instead of saving to
  750.     a buffer and saving it at the end.
  751.     For pictures that would require virtual memory (bigger
  752.     than 320x200), this'll save some time.
  753.   o Added 640x400 resolution for low-end SVGA.
  754.  
  755.  Rel 1.5f (12/13/91)
  756.   o DTA can now read IMG files created by the Stephen Coy's
  757.     Vivid raytracer.
  758.   o Speeded up some input functions that were slowed down
  759.     because of some recently added features.
  760.   o Another probably unsuccessful attempt to fix the same bug
  761.     that 1.5d was supposed to fix.
  762.   o Fixed a bug in dithering (sometimes DTA wouldn't dither
  763.     the whole picture).
  764.   o DTA wasn't deleting a temporary file that it sometimes
  765.     creates.  Now it does.
  766.  
  767.  Rel 1.5e (11/24/91)
  768.   o DTA can now read GIF files as well as TGAs.  GIF87 only,
  769.     no interlacing allowed.
  770.   o Added a /V (verbose) command line option.  If you
  771.     specify this, DTA will tell you exactly how many
  772.     bytes each frame in an animation take up.
  773.   o Added the /W option, which forces DTA to use the
  774.     SVGA-type compression method, even if generating
  775.     a 320x200 .FLI.
  776.   o By the way the fix in 1.5d didn't help.  However, the
  777.     problem is pretty rare.  Maybe next time.
  778.  Rel 1.5d (11/18/91)
  779.   o Hopefully fixed a bug that caused problems with Trilobyte's
  780.     PLAY program.
  781.  Rel 1.5c (11/11/91)
  782.   o Attempting to support 800x600, 1024x768, and 1280x1024
  783.     SVGA resolutions.  Note: This is completely untested.
  784.     I haven't the foggiest idea if it works or not.
  785.  Rel 1.5b (11/09/91)
  786.   o Added "expansion" feature, which inserts averaged frames
  787.     between regular frames.
  788.   o Fixed some bugs in some weird combinations of 3d, "pingpong",
  789.     and "trail".
  790.  
  791.  Rel 1.5 (11/05/91)
  792.   o Ordered dithering
  793.   o VGA "mode x" .FLI resolutions
  794.   o fixed a bug in 320x200 delta encoding
  795.     which would sometimes cause animations to crash
  796.   o "averaging" and "trailing" (where individual frames are
  797.     created by averaging the colors across multiple input
  798.     files).  The difference between "averaging" and "trailing" is:
  799.      If you run an "average" of 2 on 10 .TGAs, frame 1 will be
  800.     an average of files 1 and 2, frame 2 an average of files 3
  801.     and 4, and so on.
  802.      If you do a "trail" of 2 on 10 .TGAs,
  803.     then frame 1 will be an average of 1 and 2, frame 2 an average
  804.     of files 2 and 3, frame 3 an average of files 3 and 4, and
  805.     so on.
  806.   o Red/blue-type 3d
  807.   o TGA output (pretty useless unless you're also averaging
  808.     input files or creating 3d images).  DTA does not compress
  809.     TGAs just yet.
  810.   o Removed .PCX output option.
  811.  
  812.  Rel 1.4 TEST 2 (10/12/91)
  813.   o DTA can now read compressed .TGAs.
  814.   o DTA can new create .GIFs or .PCXs.
  815.   o Before 1.4, DTA would give up on compressing a frame if the
  816.     compressed version required more than about 64K to store.
  817.     This was fine for 320x200 animations, where an uncompressed
  818.     frame only requires 64K anyway, but it left something to
  819.     be desired for 640x480 animations, where an uncompressed
  820.     frame takes up about 300K.
  821.     Now, 640x480 frames will be compressed unless the compressed
  822.     version takes up more than about 300K.
  823.  Rel 1.3c (09/14/31) (second bug fix)
  824.   o .MAP files were missing carriage returns between
  825.     lines.
  826.  Rel 1.3b (09/13/31) (bugfix release)
  827.   o Fixed bugs from the disastrous Rel. 1.3
  828.     (including 640x480 .FLIs)
  829.   o Big speed increase in palette creation
  830.  
  831.  Rel 1.3 (09/03/91)
  832.   o 640x480 .FLIs
  833.   o Better .FLI compression.
  834.   o In pre-1.3, the animation was stored in a temporary file,
  835.     then at the end a new file was created with the .FLI header,
  836.     and then the temporary file was copied onto the end of that.
  837.     Now, only one file is used to store the animation, and the
  838.     header gets modified at the end of the process.
  839.   o Frame #1 is now stored in a temporary file so that it doesn't
  840.     need to be recreated for the "ring frame".
  841.   o Added /G32 option for creating 32-level grayscale animations
  842.     for laptops.
  843.   o Fixed some bugs.
  844.  
  845.  Rel 1.2 (08/06/91)
  846.   o Added support for exit codes returned by LHA 2.13...
  847.     If LHA returns a non-zero exit code, DTA will abort.
  848.   o If you hit the escape key while DTA is running,
  849.     DTA will abort as soon as it's done processing
  850.     an input file.
  851.   o Changed the way input files are sorted.
  852.   o Added /p (pingpong) option.  (makes animation go in
  853.     0-1-2-3-4-3-2-1-0 order instead of 0-1-2-3-4-0).
  854.   o Added support for lists of files to process.
  855.     Tell DTA that a file is a list by preceding the filename
  856.     by an "@" character.  A list file may contain
  857.     the names of .TGA files or .LZH files.  You can't put
  858.     the name of another list file in a list file.
  859.   o Will now clip .TGA files with a resolution greater than
  860.     320x200 instead of choking on them.
  861.   o Added /O (sort order) option.  When DTA has to sort filenames,
  862.     like when you use a wildcards or when you just give the name
  863.     of an .LZH file, "/O+" (the default) will tell DTA to sort
  864.     in ascending order, "/O-" in descending order.
  865.     This option is positional... it will only affect files
  866.     specified AFTER the option on the DTA command line.
  867.     You can use this more than once on a DTA command line.
  868.  
  869.  Rel 1.1 (07/15/91)
  870.   o Can now extract .TGA files from inside of .LZH files.
  871.     (by shelling to LHA.EXE)  Takes longer, but can save plenty
  872.     of disk space.
  873.   o Added /s (to specify playing speed).
  874.   o Doesn't choke on truncated .TGA files any more.
  875.   o Rewrote some I/O routines so scanning palettes is quicker.
  876.